Method and System for Modeling User and Location

ABSTRACT

A method and system for determining a preference of a user for a location is provided. The preference of the user for the location is determined based on a plurality of users and a plurality of locations. The method includes determining a user-location relation based on a plurality of relations of the users with the locations, determining a plurality of POItags indicative of one or more properties of the plurality of locations, and determining a user-POItag relation based on the plurality of users and the plurality of POItags. The method also includes determining a location-POItag relation based on the plurality of locations and the plurality of POItags, and determining the preference of the user for the location based on at least one of the user-location relation, the user-POItag relation, and the location-POItag relation. The system includes a controller configured to perform the method. A vehicle including the system is also provided.

CROSS REFERENCE TO RELATED APPLICATION

This application claims priority under 35 U.S.C. § 119 from GermanPatent Application No. 18170964.3, filed May 7, 2018, the entiredisclosure of which is herein expressly incorporated by reference.

BACKGROUND AND SUMMARY OF THE INVENTION

The present disclosure relates to a method and system for modeling userand location, in particular for use in a location-based servicesenvironment. In a preferred embodiment, there is provided a method andsystem for modeling user and location for use in a location-basedrecommendation service.

Location-based services (LBS) have become highly relevant in manyapplication domains, in particular with respect to automotive digitalservices. An effective and efficient use of location-based services canvery much benefit from proper modeling of users and location, as well asof relations between users and locations.

“User modeling for point-of-interest recommendations in location-basedsocial networks: the state-of-the-art”, Shudong Liu, School ofInformation & Security Engineering, Zhongnan University of Economics &Law, Wuhan 430073, China, describes that the rapid growth oflocation-based services has greatly enriched people's urban lives andattracted millions of users in recent years. Location-based socialnetworks (LBSN) allow users to check-in at a physical location and sharedaily tips on points-of-interest (POI) with other users. Such check-inbehavior can make daily real-life experiences spread quickly through theInternet. Moreover, such check-in data in LBSNs can be exploited tounderstand the basic laws of humans' daily movement and mobility. Theauthor focuses on reviewing the taxonomy of user modeling for POIrecommendations through the data analysis of LBSNs. The structure anddata characteristics of LBSNs is introduced, then a formalization ofuser modeling for POI recommendations in LBSNs is presented. Dependingon which type of LBSNs data was fully utilized in user modelingapproaches for POI recommendations, user modeling algorithms can bedivided into four categories: pure check-in data-based user modeling,geographical information-based user modeling, spatio-temporalinformation-based user modeling, and geo-social information-based usermodeling. The author mentions that spatial clustering results fromusers' tendency to visit nearby places rather than distant ones in theirdaily lives, thereby generating clusters containing different visitedlocations within that same cluster. This may make it difficult toreliably identify single locations visited by a user.

“Mining Interesting Locations and Travel Sequences from GPSTrajectories”, Yu Zheng, et al., Microsoft Research Asia, WWW 2009, Apr.20-24, 2009, Madrid, Spain, proposes a hypertext-induced topic searchbased inference model, which regards an individual's access on alocation as a directed link from the user to that location. This modelinfers the interest of a location by taking into account the threefactors: the notion that the interest of a location depends not only onthe number of users visiting the location but also the users' travelexperiences; the notion that users' travel experiences and locationinterests have a mutual reinforcement relationship; and the notion thatthe interest of a location and the travel experience of a user arerelative values and are region-related. The authors have not, however,studied the algorithm framework in the semantic space that can bring notonly improvements with respect to interpretation, but user and locationinto the same measurable space for computation, for example regarding asimilarity for location recommendations, user and location profilingthat are fundamental for smart location based service.

For the application domain of automotive digital services, the visits ofa user to a certain location play an important role. Thus, it would bebeneficial if the general relationship between user and location couldbe determined across a large set of users and locations, and if the userand location could be scored as user and location profiles.

Therefore, there is a need for an efficient and effective algorithm forachieving user and location scoring that can be used, for example, insmart location mining and recommendation, gamification, and for user andlocation profiles.

In particular, there is a need for an algorithm modeling framework thatallows to bring both user and location into the measurable semanticspace.

One or more of the objects specified above are substantially achieved bymethods and system for modeling user and location in accordance with anyone of the appended claims, which alleviate or eliminate one or more ofthe disadvantages described above and which realize one or more of theaforementioned advantages.

According to the invention, there is provided a method for determining apreference of a user for a location. The method includes determining auser-location relation based on a plurality of relations of a pluralityof users with a plurality of locations, determining a plurality ofPOItags indicative of one or more properties of the plurality oflocations, determining a user-POItag relation based on the plurality ofusers and the plurality of POItags, determining a location-POItagrelation based on the plurality of locations and the plurality ofPOItags, and determining the preference of the user for the locationbased on at least one of the user-location relation, the user-POItagrelation, and the location-POItag relation.

In a preferred embodiment, determining the user-POItag relation and/ordetermining the location-POItag relation is based on a probabilisticmatrix factorization model.

In a preferred embodiment, the method further includes determining thelocations based on a clustering of a plurality of geolocations. In someembodiments, each geolocation of the plurality of geolocations isindicative of a visit of a user of the plurality of users to a locationof the plurality of locations.

In a preferred embodiment, each relation of the plurality of relationsof the users with the locations is determined based on a visit of a userof the plurality of users to a location of the plurality of locations.In some embodiments, the visit is determined based on r_(i,j)=f(visit_count(u_(i), 1_(j))). The visit_count represents a number ofvisits of the user to the location.

In a preferred embodiment, the plurality of users, the plurality oflocations, and/or the plurality of POItags include latent factors. Thelatent factors may be represented in semantic space.

In a preferred embodiment, the relation of a user with respect to alocation is determined as r_(ij)=u_(i) ^(T)×l_(j).

In a preferred embodiment, the method further includes normalizingparameter values indicative of each user of the plurality of usersand/or normalizing parameter values indicative of each location of theplurality of locations. Normalizing may be based on the followingcompression function: f(x)=√x.

In a preferred embodiment, one or more of the following steps:determining a plurality of POItags indicative of one or more propertiesof the plurality of locations, determining a user-POItag relation basedon the plurality of users and the plurality of POItags, and determininga location-POItag relation based on the plurality of locations and theplurality of POItags, which is based on an estimation algorithm that isconvex optimizable. The determining may be performed in semantic space.

According to the invention there is further provided a system fordetermining a preference of a user, the system including a control unitconfigured for performing the method in accordance with the presentinvention.

According to the invention there is further provided a vehicle includingthe system according to the present disclosure.

Other objects, advantages and novel features of the present inventionwill become apparent from the following detailed description of one ormore preferred embodiments when considered in conjunction with theaccompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings disclose exemplifying and non-limiting aspectsin accordance with embodiments of the present invention.

FIG. 1 is an illustration of clustering of locations based on uservisits in accordance with embodiments of the present invention.

FIG. 2 is an illustration of modeling of user and location in accordancewith embodiments of the present invention.

FIG. 3 is a flow chart of an exemplary process for user locationmodeling in accordance with embodiments of the present invention.

FIG. 4 is a table illustrating example location scores determined inaccordance with embodiments of the present invention.

FIG. 5 is a table illustrating example user scores determined inaccordance with embodiments of the present invention.

FIG. 6 is a diagram illustrating a distribution of example user scoresdetermined in accordance with embodiments of the present invention.

DETAILED DESCRIPTION OF THE DRAWINGS

Proper modeling of users and locations is key to providing relevantlocation based services. Within this disclosure, point of interest (POI)tags are applied to individual locations in order to illustrate a users'interest and to provide structure to a location's profile. A profile isa collection of data indicative of properties of an entity, for examplea user or location. The methods and systems disclosed herein propose anovel approach to modeling user and location, incorporate relationshipsbetween users and POItags as well as between locations and PIO-tags,employing user-location matrix in collaborative filtering to establish auser location modeling framework.

When planning to visit a certain place, users typically select acorresponding POI or address in order to identify the place in terms ofnavigation and destination management. Therefore, it can be assumed thatusers have or can easily accumulate a collection of POItags and/oraddresses from navigation and destination management (e.g. from anavigation system in a vehicle or a corresponding app running on amobile device) which can be used to reveal the users' interests overtime. Simultaneously, locations can be provided with POItags, forexample by a map provider or from different users (e.g. crowdsourcing).Such POItags can be used as input for a location's profile.

Therefore, there are several data sets available for processing: user(interest) profiles, location profiles, and the modeling of respectiverelationships. An exemplary use case benefits from such data sets inthat user-POItag and location-POItag relationships (i.e. matrixes) canbe employed in a recommendation system. For example, a user may define atype of place they intend to visit and the methods and systems disclosedherein can be used in order to provide the user with a correspondingrecommendation.

FIG. 1 illustrates clustering of locations based on user visits inaccordance with embodiments of the present invention. FIG. 1 shows a setof N user visits ul, u . . . , ui, u . . . ,u_(N) to a set of Mlocations l1, l . . . , lj, l . . . , l_(M), where each location l1, l .. . , lj, l . . . , l_(M) includes one or more user visits. It is notedthat the user visits u1, u . . . , ui, u . . . , uN do not have to bevisits to identical geographical locations (or geolocations), forexample due to the fact that several user visits to the same location(e.g. a shopping mall) do not necessarily entail that a user has visitedthe exact same geolocation (e.g. parking garage or parking spot) eachtime. It is a common occurrence that a user may park their car atdifferent places near the location even though the location is thedestination for all the respective visits. In the example of theshopping mall it is, furthermore, very likely that the user intends tovisit different places within the mall (e.g. stores, restaurants, movietheatres), such that all these visits pertain to the same location (i.e.the mall) even though there is a different context each time.

In a first step, a clustering algorithm is applied in order to determinesignificant locations from a set of locations/visited by users u over aperiod of time. In some embodiments, density-based clustering is used.In density-based clustering, clusters may be defined as areas of higherdensity than a remainder of a data set. Elements located in sparselypopulated areas, which are necessary to separate different clusters, maybe considered noise or border points. It is noted that other clusteringmethods or algorithms are applicable. As a result several clusters canbe determined, denoting (relatively small) areas containing a number ofvisited geolocations, without the necessity of these geolocations to beidentical.

Next, a user and location interaction matrix R is built as:

ri,j=f(visit_count(user_(i),location_(j))).

Here, f is a monotonic function (e.g. a linear function f(x)=x). Inorder to avoid users showing a large number of visits being overlydominant with respect to other users in the data set, a compressionfunction can be applied. In one example the compression function isdefined as f(x)=√x.

Subsequently, a user experience score, i.e. a score indicative of theexperience of a user u with respect to a location l, is determined basedon a geolocation and location significance score, i.e. a combined scoreof a user and that of a location. A user score vector may be denoted asu=u₁ . . . U_(N) across N users and a location score may be denoted asl=l₁ . . . l_(M) across M locations. The vector u⁰ can be initialized as

$u^{0} = {\left\lbrack {\frac{1}{N}\mspace{14mu} \ldots \mspace{14mu} \frac{1}{N}} \right\rbrack.}$

Therefore, for the n-th iteration:

l ^(n) =u ^(n-1) ·R and

u ^(n) =l ^(n) ·R ^(T)

The iteration is terminated if |u^(n)−u^(n-1)|ε.

Using merely POItag data in order to semantically describe a givenlocation may introduce ambiguity in some case, since users may make useof different POItags in connection with a single location. The POItagincludes, for example, the geolocation region information (e.g. city,state and country) due to the high relevance within the applicationdomain as a proven way to identify certain locations. Further, POItagsmay also include category information (e.g. restaurant, shopping,recreational). It is noted that a score, both for a user or a location,may be provided with a factor or function indicative of a decay. In someapplications, relevance of a user score or a location score may berather short-lived (e.g. users change their behavior and/or locationsbeing visited less frequently). In such applications, it is desirable tolet scores decay over time in order to quickly adapt to changingsituations.

So-called latent factors can be used to represent user, location, andPOItag. Each factor can be a topic that can illustrate the user'spreference, location profile, or POItag's semantic meaning, all inlatent but semantic space. Latent variables, as opposed to observablevariables, are variables that are not directly observed but are ratherinferred through a mathematical model from other variables that areobserved or directly measured. Machine learning models that aim toexplain observed variables in terms of latent variables are calledlatent variable models. Those variables can be semantically measurableusing a suitable distance measure in the latent space. Therefore,variables having similar semantics are close to one another, in terms ofthe selected distance measure, in the latent space. By incorporating thePOItag into the latent factor model, POItags can be used to reveal afactor's semantic meaning.

FIG. 2 shows modeling of user and location in accordance withembodiments of the present invention. FIG. 2 illustrates an exemplarymethod of generating matrixes 240, 250, 260 from tables 210, 220, 230containing the corresponding vectors representing the respective POItag,user, or location data. Users, locations, and POItags are alltransformed into the same latent space, thus a similarity between a pairof any two elements can be measured or quantified. Latent factors 260can be interpreted with POItags. Human users are typically not able orwilling to understand/interpret the value of a latent variable in thelatent space. However, human users can understand a POItag. For example,a POItag such as: [Citi, Bank, Money, Insurance, J. P. Morgan, Cash,Interest, Stock], strongly suggests, to a human user, a financialcontext.

Table 210 contains POItags Tk, table 220 contains users Ui, and table230 contains locations Lj. The concept includes applying collaborativefiltering in order to determine matrixes 240, 250, and 260 from tables210, 220, and 230. “Collaborative Filtering with User Ratings and Tags”,Tengfei Bao, Yong Ge, Enhong Chen, Hui Xiong, Jilei Tian, which isincorporated herein by reference in its entirety, describe acollaborative filtering model based on probabilistic matrixfactorization in order to determine predict users' interests to items bysimultaneously utilizing both tag and rating information. This methodcan be applied in the present example. It is noted that the articlementions “latent features” instead of “latent factors” as used in thepresent disclosure. These terms are used interchangeably as they referto the same identical concept. Using the method, a low-rankapproximation for three matrices is performed at the same time to learnthe low-dimensional latent factors of users, items, and tags. Then, oneuser's preference to an item is predicted as the product of the user anditem latent factors. It has been shown that the proposed method cansignificantly outperform benchmark methods, which is beneficial in thepresent application domain.

FIG. 3 shows a flow chart of an exemplary process 300 for user locationmodeling in accordance with embodiments of the present invention.Process 300 starts at step 301. In step 302 a user-location relation 260is determined based on a plurality of relations rij of a plurality ofusers 220 with a plurality of locations 230. In step 304, a plurality ofPOItags 210 indicative of one or more properties of the plurality oflocations 230 is determined. In step 306, a user-POItag relation 240 isdetermined based on the plurality of users 220 and the plurality ofPOItags 210. In step 308, a location-POItag relation 250 is determinedbased on the plurality of locations 230 and the plurality of POItags210. In step 310, the preference of the user u for the location 1 isdetermined based on at least one of the user-location relation 260, theuser-POItag relation 240, and the location-POItag relation 250. Theprocess ends at step 311.

Generally, user and location are represented with POItag distributions,for example:

User u: POItag 1: 20, POItag 2: 30, . . . .

Location l: POItag 1: 0, POItag 2: 100, . . . .

The respective values may be normalized in order to project the valuesinto a common interval (e.g. [0-1.0]), for example:

User u: POItag 1: 0.02, POItag 2: 0.03, . . . .

Location l: POItag 1: 0, POItag 2: 0.07, . . . .

Further, user-POItag, location-POItag, and user-location relationshipsmay be modeled within a probabilistic matrix factorization model. Theuser, location, and POItag are in semantic spaces, and the user-POItag,location-POItag, and user-location matrix are generated as the innerproduct in semantic space. In particular, the user and location onPOItag space are the projections from semantic space.

One or more of determining the plurality of POItags 210 indicative ofone or more properties of the plurality of locations 230, determiningthe user-POItag relation 240 based on the plurality of users 220 and theplurality of POItags 210, and determining the location-POItag relation250 based on the plurality of locations 230 and the plurality of POItags210, may be based on an estimation algorithm that is convex optimizable.One option for an estimation algorithm includes estimating one parameterwhile keeping other parameters fixed, in order to arrive at a convexoptimizable problem. The relation rij of a user ui with a location lj isdetermined as rij=u^(T)×lj. The meaning of each dimension in semanticspace is that both user and location are transformed into latent space,such that a distance or relevancy between them can be measured using theselected distance measure (see above). Here, each dimension isrepresented by a corresponding latent variable. In order to interpretthe semantic meaning dimensional z, the top k POItags in that semanticspace dimensional can be used.

FIG. 4 shows a table 400 illustrating example location scores determinedin accordance with embodiments of the present invention. In order toillustrate an example of user and location scores determined inaccordance with the present invention, user and location scoring (in theexample without POItag and collaborative filtering) has been performedon test data acquired over time. The scoring has been performed on atotal number of 11,820 data points from a total of 337 users. Datapoints were collected based on locations visited by the users by car. Inpreprocessing, special locations, such as a user's home location, havebeen removed. Density clustering (algorithm: optics) with a cluster sizeof 300 m and a cluster density of visits from at least 4 users has beenperformed. After clustering, the user-location matrix R has beenprepared and, subsequently, user and location scores have beendetermined based on the iterative algorithm described above. As can beseen from table 400, the locations having the top 6 scores already showsignificant differences between individual scores. Location 1, forexample, has a score nearly a magnitude greater than location 2. In thisexample, location 1 corresponded to the location of the joint work placeof most of the test user, so that the high score of location 1 has beencorrectly determined as being of very high relevance for this particulartest group of users. With a bigger and more heterogeneous user group,such outliers should occur relatively rarely.

FIG. 5 shows a table 500 illustrating example user scores determined inaccordance with embodiments of the present invention. Similar todetermining location scores, user scores have been determined based onthe same test data as described above with respect to FIG. 4 and table400. From table 500, it can be seen that scores of individual usersdiffer less than those of the locations shown in table 400. This is dueto even a small test group of users already offering a wide variety ofvisited locations without a clear bias, except in cases of veryhomogeneous groups. Both tables 400 and 500 in combination allow for avery reliable recommendation of locations to users, based on user andlocation scores.

FIG. 6 shows a diagram 600 illustrating a distribution of example userscores determined in accordance with embodiments of the presentinvention. As can be seen from diagram 600, about 10% of users exhibit asignificantly higher score than the remaining 90% of users. Combiningthe user and location scores in order to provide recommendations, thus,allows for experienced users and popular locations (i.e. respectivelythose having high scores) to be prioritized over others having lowerscores.

In accordance with the present invention, it is, thus, very easy todetermine a similarity of users across locations and, likewise, asimilarity of locations across the users. Based on a similarity matrixso generated, the recommendation can be determined and users can beprovided with a suggestion to visit locations preferred by similarusers. Further, a user score can be used for gamification. For example,an opinion leader or other important user (e.g. a local person ascompared to a visitor) will typically exhibit a high score, due tofrequent visits to locations within a region, effectively making thatperson an expert user for the region.

The foregoing disclosure has been set forth merely to illustrate theinvention and is not intended to be limiting. Since modifications of thedisclosed embodiments incorporating the spirit and substance of theinvention may occur to persons skilled in the art, the invention shouldbe construed to include everything within the scope of the appendedclaims and equivalents thereof.

What is claimed is:
 1. A method for determining a preference of a userfor a location, the method comprising the acts of: determining auser-location relation based on a plurality of relations of a pluralityof users with a plurality of locations; determining a plurality ofPOItags indicative of one or more properties of the plurality oflocations; determining a user-POItag relation based on the plurality ofusers and the plurality of POItags; determining a location-POItagrelation based on the plurality of locations and the plurality ofPOItags; and determining the preference of the user for the locationbased on at least one of the user-location relation, the user-POItagrelation, and the location-POItag relation.
 2. The method according toclaim 1, wherein the determining the user-POItag relation and/or thedetermining the location-POItag relation is based on a probabilisticmatrix factorization model.
 3. The method according to claim 1, furthercomprising: determining the locations based on a clustering of aplurality of geolocations.
 4. The method according to claim 3, whereineach geolocation of the plurality of geolocations is indicative of avisit of a user of the plurality of users to a location of the pluralityof locations.
 5. The method according to claim 1, wherein each relationof the plurality of relations of the plurality of users with theplurality of the locations is determined based on a visit of a user ofthe plurality of users to a location of the plurality of locations. 6.The method according to claim 4, wherein each relation of the pluralityof relations of the plurality of users with the plurality of thelocations is determined based on a visit of a user of the plurality ofusers to a location of the plurality of locations.
 7. The methodaccording to claim 6, wherein the visit is determined based on:r_(i,j)=f(visit_count(u_(i), l_(j))), where r_(i,j) represents a userand location interaction matrix, and visit_count represents a number ofvisits of the user (u_(i)) to the location (l_(j)).
 8. The methodaccording to claim 1, wherein the plurality of users, the plurality oflocations, and/or the plurality of POItags include latent factors. 9.The method according to claim 8, wherein the latent factors arerepresented in semantic space.
 10. The method according to claim 1,wherein the relation (r_(ij)) of the user (u_(i)) with the location(l_(j)) is determined based on: r_(ij)=u^(T)×l_(j), where r_(i,j)represents a user and location interaction matrix.
 11. The methodaccording to claim 7, wherein the relation (r_(ij)) of the user (u_(i))with the location (l_(j)) is determined based on: r_(ij)=u^(T)×l_(j),where r_(i,j) represents a user and location interaction matrix.
 12. Themethod according to claim 1, further comprising: normalizing parametervalues indicative of each user of the plurality of users and/ornormalizing parameter values indicative of each location of theplurality of locations.
 13. The method according to claim 12, whereinthe normalizing is based on a compression function: f(x)=√x.
 14. Themethod according to claim 1, further comprising one or more of thefollowing acts of: determining a plurality of POItags indicative of oneor more properties of the plurality of locations; determining auser-POItag relation based on the plurality of users and the pluralityof POItags; determining a location-POItag relation based on theplurality of locations and the plurality of POItags, wherein thedetermining is based on an estimation algorithm that is convexoptimizable.
 15. The method according to claim 14, wherein thedetermining is performed in semantic space.
 16. A system for determininga preference of a user for a location, comprising: a controllerconfigured for performing the method according to claim
 1. 17. A vehiclecomprising: a system according to claim 16.